package com.icinfo.cloud.provider.punish.dto;


import com.fasterxml.jackson.annotation.JsonFormat;
import com.icinfo.cloud.provider.punish.common.electricsent.vo.DocumentSendRecordByPartiesVo;
import com.icinfo.cloud.provider.punish.ucase.casemain.model.CaseHandlePersonRecord;
import com.icinfo.cloud.provider.punish.ucase.casemain.model.CasePartiesLegalInfo;
import com.icinfo.cloud.provider.punish.ucase.casemain.model.CasePartiesPersonInfo;
import lombok.Data;

import java.time.LocalDateTime;
import java.util.List;

/**
 * 案件送达信息返回视图
 *
 * @author  zq
 */
@Data
public class CaseBasicInfoDto {

    /**
     * 案件id
     */
    private String caseId;

    /**
     * 案由编码
     */
    private String caseReasonCode;

    /**
     * 案由名称
     */
    private String caseReasonName;

    /**
     * 当事人类型名称
     */
    private String partyTypeName;

    /**
     * 办案人员列表
     */
    private List<CaseHandlePersonRecord> caseHandlePersonList;

    /**
     * 办案部门
     */
    private String caseHandlingDeptInfo;

    /**
     * 案件名称
     */
    private String caseName;

    /**
     * 案件编号
     */
    private String caseNumber;

    /**
     * 案件来源
     */
    private String caseSource;

    /**
     * 案件类型
     */
    private String caseType;

    /**
     * 案件登记日期
     */
    @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
    private LocalDateTime caseCreateTime;
    /**
     * 立案日期
     */
    @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
    private LocalDateTime caseRegistTime;

    /**
     * 案件期限截止时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
    private LocalDateTime caseTimelimit;

    /**
     * 案件当前阶段名称
     */
    private String caseCurrentStageName;
    /**
     * 案件当前环节名称
     */
    private String caseCurrentLinkName;

    /**
     * 裁决完毕日期
     */
    @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
    private LocalDateTime caseVerdictEndTime;

    /**
     * 结案日期
     */
    @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
    private LocalDateTime caseEndTime;

    /**
     * 案件状态
     */
    private String caseStatus;

    /**
     * 案件裁决期限提醒
     */
    private String remainVerdictTime;

    /**
     * 当事人显示名称
     */
    private String partyShowName;

}
